<template>
    <div class="app-container">

      <el-form :model="form" ref="form" label-width="100px" v-loading="formLoading">
        <el-form-item label="Industry：" required>
          <el-input v-model="form.name"></el-input>
        </el-form-item>
        <!-- <el-form-item label="年级：" required>
          <el-select v-model="form.level" placeholder="年级">
            <el-option v-for="item in levelEnum" :key="item.key" :value="item.key" :label="item.value"></el-option>
          </el-select>
        </el-form-item> -->
        <el-form-item>
          <el-button type="primary" @click="submitForm">Submit</el-button>
          <el-button @click="resetForm">Reset</el-button>
        </el-form-item>
      </el-form>
    </div>
  </template>

  <script>
  import { mapGetters, mapState, mapActions } from 'vuex'
  import industryApi from '@/api/industry'

  export default {
    data () {
      return {
        form: {
          id: null,
          name: '',
          level: 1,
          levelName: ''
        },
        formLoading: false
      }
    },
    created () {
      let id = this.$route.query.id
      let _this = this
      if (id && parseInt(id) !== 0) {
        _this.formLoading = true
        industryApi.select(id).then(re => {
          _this.form = re.response
          _this.formLoading = false
        })
      }
    },
    methods: {
      submitForm () {
        let _this = this
        this.formLoading = true
        this.form.levelName = this.enumFormat(this.levelEnum, this.form.level)
        industryApi.edit(this.form).then(data => {
          if (data.code === 1) {
            _this.$message.success(data.message)
            _this.delCurrentView(_this).then(() => {
              _this.$router.push('/education/industry/list')
            })
          } else {
            _this.$message.error(data.message)
            _this.formLoading = false
          }
        }).catch(e => {
          _this.formLoading = false
        })
      },
      resetForm () {
        this.$refs['form'].resetFields()
        this.form = {
          id: null,
          name: '',
          level: 1,
          levelName: ''
        }
      },
      ...mapActions('tagsView', { delCurrentView: 'delCurrentView' })
    },
    computed: {
      ...mapGetters('enumItem', [
        'enumFormat'
      ]),
      ...mapState('enumItem', {
        levelEnum: state => state.user.levelEnum
      })
    }
  }
  </script>
